package hyl.core.conf;

import java.io.File;
import java.util.Locale;

import hyl.core.Amy;
import hyl.core.MyFun;
import hyl.core.io.MyFile;
import hyl.core.io.MyPath;

/**
 * 文件格式： 语言_国别_文件后缀名 。<br>
 * ini zh_CN_xxx1.ini zh_CN_xxx2.ini 两个文件同时读取 en_US_xxx.ini 批量加载 同语言国别
 * 但是后缀不一样的文件 存放在同一的map中
 */
public class MyLang extends AMap {
	private final String _rootpath = MyPath.getPathOfPro() + "locale/";
	private static MyLang ml;

	public MyLang(String path) {
		loadConfig(path);
	}

	public static MyLang getInstance() {
		if (ml == null) {
			// 直接载入配置
			ml = new MyLang(MyConfig.getConfOfLang());
		}
		return ml;
	}

	public void loadConfig(String path) {
		Locale locale = Locale.getDefault();// 这个对象表示了特定的地理
		String filename = locale.toString();
		pp.clear();
		if (MyFun.isEmpty(path))
			path = _rootpath;
		File dir = MyFile.openDir(path);
		for (File f : dir.listFiles()) {
			if (f.getName().startsWith(filename)) {
				// System.out.println(f.getAbsolutePath());

				MyConfig.loadIni(f, Amy.charset, pp);

			}
		}
	}
}
